import { Pipe, PipeTransform } from '@angular/core';

@Pipe({
  name: 'gender'
})
export class GenderPipe implements PipeTransform {

  // 我们在使用管道的时候会这样写 {{ value | 管道名:'xxx' }}，当然，xxx这一步是可以省略的
  // value就会固定的传递到下方transform方法的参数1中
  // 而xxx会被传递到参数2中

  // 所以现在我们动手写一个案例，根据sex的0和1返回男女，并且如果参数二为'en'则以英文形式返回男女，参数二不传默认取值zh
  transform(value: number, lang = "zh") {
    switch (value) {
      case 0: {
        if (lang == 'en') {
          return 'female';
        }
        return '女';
      }
      case 1: {
        if (lang == 'en') {
          return 'male';
        }
        return '男';
      }
      default: {
        if (lang == 'en') {
          return 'gay';
        }
        return '变态';
      }
    }
  }

}
